#pragma once

#include <iostream>

#include <glm\glm.hpp>
#include <glm\gtc\matrix_transform.hpp>
#include <SFML/Window.hpp>
#include "texture.hpp"
#include "SkyboxTechnique.h"
#include "Mesh.h"
#include "CubemapTexture.h"

class Skybox
{
public:
	Skybox();
	~Skybox(void);

	bool init(const char* directory,
			  const char* front,
              const char* back,
              const char* left,
              const char* right,
              const char* top,
              const char* bot);

	void render(glm::mat4 ProjectionMatrix, glm::mat4 ViewMatrix, glm::mat4 ModelMatrix);
	
private:
	SkyboxTechnique* m_pSkyboxTechnique;
    //const Camera* m_pCamera;
    CubemapTexture* m_pCubemapTex;
    Mesh m_Mesh;
    //PersProjInfo m_persProjInfo;
};

